package git.matrix.mapper;

import git.matrix.pojo.User;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface UserMapper {

    //根据用户,密码登录
    public User getLogin(@Param("userName") String userName,
                         @Param("password") String password);

    //测试查询所有用户信息
    public List<User> getAllUser();
    //根据Id查询用户
    User getUserId(int id);
    //添加用户,
    int addUser(User user);
    //修改用户
    int updateUser(User user);
    //删除用户
    int deleteUser(int id);

    //综合查询 查询用户信息对应角色
    public List<User> getUserRole();

    /**
     * 连表查询
     * 通过用户名+角色id  查询条数
     * @param userName
     * @param userRoleId
     * @return
     */
    public int getUserByNRCount(@Param("userName") String userName,
                                @Param("userRoleId") int userRoleId);

    /**
     * 通过用户名+ID  分页显示
     * @param userName
     * @param userRoleId
     * @param current 当前查询开始位置
     * @param size
     * @return
     */
    public List<User> getUserListByPage(@Param("userName")String userName,
                                        @Param("userRoleId")int userRoleId,
                                        @Param("current")int current,
                                        @Param("size") int size);

}
